// Copyright 2017 The Kubernetes Authors.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
//     http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.

import {Controller} from 'index_controller';
import indexModule from 'index_module';
import {stateName as loginState} from 'login/state';

describe('Index controller', () => {
  /** @type {!Controller} */
  let ctrl;

  let state;

  beforeEach(() => {
    angular.mock.module(indexModule.name);

    angular.mock.inject(($controller, $uiRouterGlobals) => {
      state = $uiRouterGlobals;
      ctrl = $controller(Controller, {$state: state});
    });
  });

  it('should return true if on login state', () => {
    // given
    state.current = {name: loginState};

    // then
    expect(ctrl.isLoginState()).toBeTruthy();
  });

  it('should return false if not on login state', () => {
    // given
    state.current = {name: 'someState'};

    // then
    expect(ctrl.isLoginState()).toBeFalsy();
  });
});
